1. The Field of the Invention
The present invention generally relates to laser printers, and more particularly to a laser print apparatus that generates a pulse width value and a justification value based on pixels in a multi-bit image.
2. Background of the Invention
Color and gray value digital images are both composed of picture elements (pixels), each pixel represented by multiple binary bits that define either a color or a gray level. In order to represent such an image on a bi-level (black/white) printer, the pixel data, if not already gray level, is typically converted into a gray level multi-bit value (e.g., 8 bits per pixel). The individual gray level pixels are then typically converted to binary level pixels through use of a digital halftoning process.
Digital halftoning is the process of transforming a continuous-tone image into a binary image that has the illusion of the original continuous tone image, using a careful arrangement of binary picture elements. The process is also called spatial dithering. In the case of color images, the color continuous-tone image is typically separated into color channels first. Separate halftones are then formed for each of the color channels.
Resolution enhancement technology (RET) has been used to smooth out the 1-bit data generated by halftoning algorithms. RET is typically implemented with a large block of dedicated hardware, and typically buffers several lines of data. RET is a hardware intensive technology that takes 1-bit data and reduces the jagged edges that are noticeable at lower resolutions. RET uses template matching on the 1-bit data to essentially guess what the original smooth shapes of the image features were in the grayscale image (i.e., prior to halftoning). RET typically compares a window (e.g., 7.times.9 pixels) of the 1-bit data with hundreds of templates to identify features (e.g., a diagonal line, the top of the letter “O”, etc.) in the window. The window is moved around the entire 1-bit image to identify features throughout the entire image. Laser modulation codes are generated based on the results of the template matching. The laser modulation codes are used to modulate a laser in the printer in a manner that results in the jagged edges being removed or reduced in the printed output.